import Vue from 'vue'
// 导入 vue-i18n 国际化插件
import VueI18n from 'vue-i18n'

// 导入的包, 都是从 element-ui 这个包中提供的
// 实际上,这两个包只能对 element-ui 提供的组件进行多语言转换

// 英文语言包
import enLocale from 'element-ui/lib/locale/lang/en'
// 中文语言包
import zhLocale from 'element-ui/lib/locale/lang/zh-CN'
// 导入 Element 语言配置插件
// 需要将 Element 组件中的内容转换成英文,就需要使用这个插件
// 这个插件是 Element 提供好的 直接使用
import ElementLocale from 'element-ui/lib/locale'

// 引入自定义中文包
import customZh from './zh'
// 引入自定义英文包
import customEn from './en'

// 将 VueI18n 挂载为 Vue 的插件
Vue.use(VueI18n)

const i18n = new VueI18n({
  locale: 'en', // 设置默认地区, zh 中国地区
  // 设置地区信息
  messages: {
    en: {
      ...enLocale,
      ...customEn
    },
    zh: {
      ...zhLocale,
      ...customZh
    }
  }
})

// 配置 Element 语言包的转换关系
// key, value 需要转换的值
// 将对应的值进行解析,转换
ElementLocale.i18n((key, value) => i18n.t(key, value))

export default i18n
